#ifndef __MY_DATA__
#define __MY_DATA__
#include"Util.h"
#include<mysql/mysql.h>
#include<stdio.h>
#include<mutex>
#include<cstdlib>

namespace aod{
#define HOST "127.0.0.1"
#define USER "root"
#define PASSWARD "5201314"
#define NAME "Aod_system"

    MYSQL* MysqlInit();
    void MysqlDestory(MYSQL* mysql);
    bool MysqlQuery(MYSQL* mysql,const std::string &sql);
    
    class TableVideo{
        public:
            TableVideo()
            {
                _mysql = MysqlInit();
                if(_mysql == NULL)
                {
                    exit(-1);
                }
            }
            ~TableVideo()
            {
                MysqlDestory(_mysql);
            }

            bool Insert(const Json::Value& video);  //插入
            bool UpDate(int video_id,const Json::Value& video); //更新
            bool Delete(const int video_id);    //删除
            bool SelectAll(Json::Value* videos);                          //查询全部
            bool SelectOne(const int video_id,Json::Value* video);        //查询单个
            bool SelectLike(const std::string& key,Json::Value* videos);  //模糊匹配
        private:
            MYSQL* _mysql;
            std::mutex _mtx;
    };
}

#endif